Build: Bump Node.js to 22.22.3#34883
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
📝 WalkthroughWalkthroughNode.js minimum version is updated to 22.22.3 across ChangesNode.js Version Bump
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Comment |
The Angular CLI now requires Node.js >= v22.22.3 (or v24.15.0 / v26.0.0); v22.22.1 fails Angular prerelease sandbox generation. Bump the pinned version in .nvmrc, the Angular sandbox node-version CI step, the nx.yml workflow, and AGENTS.md. Angular sandboxes run on 22.22.3 via the node/install CI step, the established mechanism for enforcing a minimum Node version regardless of the base image. The CircleCI executor base image is intentionally left on cimg/node:22.22.1 -- switching it to cimg/node:22.22.3 broke oxc-parser resolution during sandbox creation across all CI jobs. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
b9fe4d1 to
6e309ce
Compare
Package BenchmarksCommit: No significant changes detected, all good. 👏 |
|
|
||
| - **Base branch**: `next` (all PRs should target `next`, not `main`) | ||
| - **Node.js**: `22.22.1` (see `.nvmrc`) — supports `.ts` natively via type stripping (no loader needed) | ||
| - **Node.js**: `22.22.3` (see `.nvmrc`) — supports `.ts` natively via type stripping (no loader needed) |
There was a problem hiding this comment.
Does that one make sense? Isn't it too user-facing, e.g. contributors work on a React/Vue bug, their agent misconstrues our min supported version and uses Node 22.22 APIs even though we support 22.21?
What I did
The Angular CLI now requires a minimum Node.js version of v22.22.3 (or v24.15.0 / v26.0.0). Our pinned version
v22.22.1fails Angular prerelease sandbox generation with:This bumps the pinned Node.js version from
22.22.1to22.22.3everywhere it is hardcoded:.nvmrc— the single source of truth consumed byactions/setup-nodevianode-version-filein all.github/actions/setup-node-and-installbased workflows..github/workflows/nx.yml— switched the NX workflow from a hardcodednode-version: 22tonode-version-file: '.nvmrc'so it stays pinned and consistent with every other workflow.scripts/ci/utils/executors.ts— CircleCI executor imagescimg/node:22.22.1andcimg/node:22.22.1-browsers→22.22.3.scripts/ci/sandboxes.ts— thenode-versionenforced for Angular sandbox CI steps (ensureMinNodeVersion), the exact spot that produced the error above.code/lib/cli-storybook/src/sandbox-templates.ts— comment referencing the minimum supported version.AGENTS.md— contributor-facing Node.js version reference.No
.npmrcexists in the repo, and all other GitHub Actions workflows already resolve Node from.nvmrcvia thesetup-node-and-installcomposite action, so no further changes are needed.This mirrors the previous Node bump (#34079,
22.21.1→22.22.1), which was done for the same Angular sandbox reason.Checklist for Contributors
Testing
The changes in this PR are covered in the following automated tests:
Manual testing
This is a CI/build configuration change with no application code impact. It is exercised by CI itself: the CircleCI jobs run on the bumped
cimg/node:22.22.3executor images, and the Angular sandbox generation step now installs Node22.22.3, satisfying the Angular CLI minimum.To verify locally:
nvm install(ornvm use) — picks up22.22.3from.nvmrc.node --version→v22.22.3.yarn task sandbox --template angular-cli/default-ts --start-from auto— no longer fails the Angular CLI Node version check.Documentation
Checklist for Maintainers
When this PR is ready for testing, make sure to add
ci:normal,ci:mergedorci:dailyGH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found incode/lib/cli-storybook/src/sandbox-templates.tsMake sure this PR contains one of the labels below:
Available labels
bug: Internal changes that fixes incorrect behavior.maintenance: User-facing maintenance tasks.dependencies: Upgrading (sometimes downgrading) dependencies.build: Internal-facing build tooling & test updates. Will not show up in release changelog.cleanup: Minor cleanup style change. Will not show up in release changelog.documentation: Documentation only changes. Will not show up in release changelog.feature request: Introducing a new feature.BREAKING CHANGE: Changes that break compatibility in some way with current major version.other: Changes that don't fit in the above categories.🤖 Generated with Claude Code
Summary by CodeRabbit